package cn.iocoder.yudao.module.system.convert.dict;

import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.module.system.api.dict.dto.DictDataRespDTO;
import cn.iocoder.yudao.module.system.controller.admin.dict.vo.data.*;
import cn.iocoder.yudao.module.system.controller.app.dict.vo.AppDictDataRespVO;
import cn.iocoder.yudao.module.system.dal.dataobject.dict.DictDataDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dict.TenantDictDataDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

@Mapper
public interface TenantDictDataConvert {

    TenantDictDataConvert INSTANCE = Mappers.getMapper(TenantDictDataConvert.class);

    List<TenantDictDataSimpleRespVO> convertList(List<TenantDictDataDO> list);

    TenantDictDataRespVO convert(TenantDictDataDO bean);

    PageResult<TenantDictDataRespVO> convertPage(PageResult<TenantDictDataDO> page);

    TenantDictDataDO convert(TenantDictDataUpdateReqVO bean);

    TenantDictDataDO convert(TenantDictDataCreateReqVO bean);

    List<TenantDictDataExcelVO> convertList02(List<TenantDictDataDO> bean);

    DictDataRespDTO convert02(TenantDictDataDO bean);

    List<AppDictDataRespVO> convertList03(List<TenantDictDataDO> list);

}
